package com.atguigu.practice;

public class GetTheMostReward {
    public static void main(String[] args) {
        int[][] board=new int[][]{
             {121, 883, 421, 928, 914, 501}
            ,{879, 282, 456, 222, 920, 691}
            ,{614, 260, 823, 616, 355, 480}
            ,{524, 517, 860, 339, 776, 564}
            ,{230, 972, 554, 423, 832, 241}
            ,{806, 858, 324, 447, 878, 342}
        };
        System.out.println(getMost(board));
    }
    public static int getMost(int[][] board){
        //目前想法，创建一个同样大小的数组，初始化后，其余格子等于自身数量加上左边或上面最大格子的那个值
        int[][] value=new int[7][7];
        for(int i=0;i<6;i++){
            for(int j=0;j<6;j++){
                value[i+1][j+1]=board[i][j]+Math.max(value[i+1][j],value[i][j+1]);
            }
        }
        int max=0;
        for(int i=0;i<7;i++){
            for(int j=0;j<7;j++){
                if(value[i][j]>max){
                    max=value[i][j];
                }
            }
        }
        return max;
    }
}
